// myself/order/list.js
import api from '../../utils/api.js';
import network from '../../utils/network.js';
import formatDate from '../../utils/format_date';
import notice from '../../utils/notice.js';
const app = getApp();

let pageIndex = 1;
Page({

    /**
     * 页面的初始数据
     */
    data: {
        tabs: [{
                title: '全部'
            }, {
                title: '场地订单'
            }, 
            // {
            //     title: '积分订单',
            // }
        ],
        activeIndex: 0,
        list: [
            {
                orderNo: "42012024020410251845",
                status: 0,
                siteDO:{
                    images: ["http://devhui.salonhui.com/assets/cover1.png"],
                    name: '龙湖天意loft1栋-1101',
                    address: '武汉市江岸区高雄路167号台北二路…'
                },
                couponTypeName: '福星惠誉拾光公寓5号楼502',
                orderAddr: '武汉市江岸区高雄路167号台北二路…',
                orderNum: 1,
                createTime: '2024-10-20 10:20',
                amount: '160'
            }
        ],
        isRefresh: false,
        visible: false,
        delVisible: false
    },

    /**
     * 生命周期函数--监听页面加载
     */
    onLoad(options) {
        this.setData({
            activeIndex: options.idx
        })
        notice.addNotice("UserInfo", this.refreshUserInfo, this);
        this.windowInfo = wx.getWindowInfo();

        this.setData({
            statusBarHeight: this.windowInfo.statusBarHeight,
            height: this.windowInfo.safeArea.bottom - 30
        })
        this.name = '';
        wx.startPullDownRefresh();

        notice.addNotice("RefreshOrder", this.onRefresh, this);
    },

    /**
     * 生命周期函数--监听页面初次渲染完成
     */
    onReady() {
        // const query = wx.createSelectorQuery().in(this);
        // query.select("#head").boundingClientRect((data) => {
        //     let windowInfo = wx.getWindowInfo();
        //     this.setData({
        //         height: windowInfo.windowHeight - data.height + 40,
        //         statusBarHeight: windowInfo.statusBarHeight
        //     })
        // }).exec();
    },

    /**
     * 生命周期函数--监听页面卸载
     */
    onUnload() {
        notice.removeNotice("UserInfo", this);
        notice.removeNotice("RefreshOrder", this);
    },

    /**
     * 页面相关事件处理函数--监听用户下拉动作
     */
    onPullDownRefresh() {
        this.setData({
            isRefresh: true
        })
        this.hasData = true;
        pageIndex = 1;
        this.request();
    },

    /**
     * 页面上拉触底事件的处理函数
     */
    onReachBottom() {
        if (this.hasData) {
            this.request();
        }
    },

    refreshUserInfo() {
        let userInfo = app.globalData.userInfo;
        this.setData({
            userInfo
        })
    },

    onSearch(e) {
        this.name = e.detail.value
        pageIndex = 1;
        this.request();
    },

    onClear() {
        this.name = '';
        pageIndex = 1;
        this.request();
    },

    onRefresh() {
        pageIndex = 1;
        this.request();
    },

    /**
     * 请求数据 
     * 将每一页的数据放一个数组，即形成一个二维数组,减少页面渲染的次数
     */
    request: function () {
        let param = {
            userId: app.globalData.userInfo.id,
            pageNo: pageIndex,
            pageSize: 20
        }

        if(this.data.activeIndex == 0) {

        } else if(this.data.activeIndex == 1) {
            param.status = 0;
        } else if(this.data.activeIndex == 2) {
            param.status = 1;
        } else if(this.data.activeIndex == 3) {
            param.status = 3;
        }

        network.getJson(api.couponOrderPage, param).then(res => {
            this.setData({
                isRefresh: false
            })
            if (pageIndex == 1) {
                this.setData({
                    list: []
                })
            }
            let list = res.data.list;

            for (let i = 0; i < list.length; i++) {
                if (list[i].siteDO && list[i].siteDO.images) {
                    list[i].siteDO.images = list[i].siteDO.images.split(',');
                }
                list[i].createTime = formatDate.formatTime(list[i].createTime, "yyyy-MM-dd HH:mm");
                // let times = list[i].bookingTimes;
                // for (let j = 0; j < times.length; j++) {
                //     times[j].formatDate = formatDate.formatWeek(times[j].startTime, times[j].endTime);
                // }
                // list[i].bookingTimes = times;
                // list[i].open = false;
            }
            this.setData({
                list: this.data.list.concat(list)
            })
            if (this.data.list.length < res.data.total) {
                this.hasData = true;
                pageIndex += 1;
            } else {
                this.hasData = false;
            }
        })
    },
    tabsChange(event) {
        this.setData({
            activeIndex: event.detail
        })

        this.onRefresh();
    },

    // openTap(e) {
    //     let idx = e.currentTarget.dataset.idx;
    //     this.setData({
    //         [`list[${idx}].open`]: !this.data.list[idx].open
    //     })
    // },

    // goPublish(e) {
    //     let order = e.currentTarget.dataset.order;
    //     wx.navigateTo({
    //         url: '/myself/order/publish?orderId=' + order.id + '&siteId=' + order.siteId + '&accommodate=' + order.siteDO.accommodate
    //     })
    // },

    // goManageActive(e) {
    //     let item = e.currentTarget.dataset.item;
    //     // let activeId = e.currentTarget.dataset.activeId;
    //     // wx.navigateTo({
    //     //     url: '/myself/order/manage-active?orderId=' + id + '&activeId=' + activeId
    //     // })

    //     wx.showActionSheet({
    //         itemList: ['活动详情', '活动报名', '编辑活动', item.activeDO.onShelves == 2 ? '活动上架' : '活动下架', '取消活动'],
    //         success: res => {
    //             console.log(res)
    //             if (res.tapIndex == 0) {
    //                 wx.navigateTo({
    //                     url: '/home/active/active-details?id=' + item.activeDO.id + '&myself=true'
    //                 })
    //             } else if (res.tapIndex == 1) {
    //                 wx.navigateTo({
    //                     url: '/myself/order/manage-active?activeId=' + item.activeDO.id
    //                 })
    //             } else if (res.tapIndex == 2) {
    //                 // wx.navigateTo({
    //                 //     url: '/myself/order/publish?orderId=' + item.id + '&siteId=' + item.siteId + '' + '&accommodate=' + item.siteDO.accommodate
    //                 // })
    //                 if (item.activeDO.onShelves == 2) {
    //                     wx.navigateTo({
    //                         url: '/myself/order/edit-active?orderId=' + item.id + '&activeId=' + item.activeDO.id
    //                     })
    //                 } else {
    //                     wx.showToast({
    //                         icon: 'none',
    //                         title: '请先下架'
    //                     })
    //                 }
    //             } else if (res.tapIndex == 3) {
    //                 wx.showModal({
    //                     title: item.activeDO.onShelves == 2 ? '确定要上架当前活动' : '确定要下架当前活动',
    //                     content: item.activeDO.onShelves == 2 ? '上架后，活动可对外展示和报名' : '下架后，活动不对外展示和报名',
    //                     success: res => {
    //                         if (res.confirm) {
    //                             network.postJson(api.updateActive, {
    //                                 id: item.activeDO.id,
    //                                 onShelves: item.activeDO.onShelves == 2 ? 1 : 2
    //                             }).then(res => {
    //                                 wx.showToast({
    //                                     icon: 'none',
    //                                     title: '操作成功',
    //                                     complete: () => {
    //                                         notice.postNotice("ActiveRefresh");
    //                                         this.onRefresh();
    //                                     }
    //                                 })
    //                             })
    //                         } else if (res.cancel) {}
    //                     }
    //                 })
    //             } else if (res.tapIndex == 4) {
    //                 wx.showModal({
    //                     title: '确定要取消该活动',
    //                     content: '取消后不再展示活动',
    //                     success: res => {
    //                         if (res.confirm) {
    //                             network.postJson(api.activeCancel, {
    //                                 id: item.activeDO.id
    //                             }).then(res => {
    //                                 wx.showToast({
    //                                     icon: 'none',
    //                                     title: '取消成功',
    //                                     complete: () => {
    //                                         notice.postNotice("ActiveRefresh");
    //                                         this.onRefresh();
    //                                     }
    //                                 })
    //                             })
    //                         } else if (res.cancel) {}
    //                     }
    //                 })
    //             }
    //         }
    //     })
    // },

    // goPay(e) {
    //     if (app.globalData.userInfo.mobile) {
    //         let site = e.currentTarget.dataset.site;
    //         let times = e.currentTarget.dataset.timer;
    //         for (let i = 0; i < times.length; i++) {
    //             times[i].showTime = formatDate.formatTime(times[i].startTime, 'yyyy年MM月dd日');
    //         }
    //         wx.navigateTo({
    //             url: '/home/pay/pay?site=' + encodeURIComponent(JSON.stringify(site)) + '&timer=' + encodeURIComponent(JSON.stringify(times))
    //         })
    //     } else {
    //         wx.navigateTo({
    //             url: '/myself/login/login',
    //         })
    //     }
    // },

    goOrderDetails(e) {
        let item = e.currentTarget.dataset.item;
        wx.navigateTo({
            url: '/myself/order/order-details?order=' + encodeURIComponent(JSON.stringify(item))
        })
    },

    // goWriteOff(e) {
    //     let id = e.currentTarget.dataset.id;
    //     wx.navigateTo({
    //         url: '/active/write-off/write-off?id=' + id
    //     })
    // },

    // delOrder(e) {
    //     this.id = e.currentTarget.dataset.id;
    //     // this.setData({
    //     //   visible: true
    //     // })
    //     wx.showModal({
    //         title: '确定要删除该订单？',
    //         success: res => {
    //             if (res.confirm) {
    //                 network.delJson(api.delOrder, {
    //                     id: this.id
    //                 }).then(res => {
    //                     this.onRefresh();
    //                 })
    //             } else if (res.cancel) {}
    //         }
    //     })
    // },

    //   cancelDelTap() {
    //     this.setData({
    //       visible: false
    //     })
    //   },

    //   okDelTap() {
    //     this.cancelTap();
    //     network.delJson(api.delOrder, {
    //       id: this.id
    //     }).then(res => {
    //       this.onRefresh();
    //     })
    //   },

    // goActiveDetails(e) {
    //     wx.navigateTo({
    //         url: '/home/active/active-details?id=' + e.currentTarget.dataset.id
    //     })
    // }
})